#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <unistd.h>
#include <string.h>

// #include <stdlib.h>　包含内容
// atoi//字符串转int类型
// atof//字符串转float类型
// atol//字符串转long类型
// atoll//字符串转long long类型
// strtod //字符串转double类型
// strtof//字符串转float类型
// strtol参数，__nptr：起始地址，__endptr：返回结束地址(不需要，带入NULL参数即可)，__base：几进制．
// strtol//字符串转long类型
// strtoul//字符串转unsigned long类型
// strtoll//字符串转long long类型
// strtoull//字符串转unsigned long long类型

// rand//获得随机数
// srand//初始化随机数发生器．

// malloc//动态分配空间，不初始化
// calloc//动态分配空间，初始化为0
// realloc//重新分配内存空间．原有内容保留．
// free//释放内存．

// abort//终止进程，不会进行一些常规的清除工作，比如释放内存等。
// exit//退出程序，清理程序占用的资源．
// atexit//注册一个函数，在exit执行时调用．

// getenv//获得环境变量．

// system//调用系统命令．

// bsearch//排序．
// qsort//在有序数组，二分法查找．

// abs//绝对值
// labs//长整型绝对值．

// typedef struct
// {
//   int quot;			/* Quotient.  */
//   int rem;			/* Remainder.  */
// } div_t;
// div//除法，返回div_t，div_t.quot是商，div_t.rem是余数．
// ldiv//和div一样，long除法
// lldiv//和div一样，long long除法

// #include <time.h>
extern size_t time(size_t *__timer);
int main(int argc, char **argv)
{
#if 0
    //　如果没有使用srand初始化随机数发生器，或srand(输入的种子一样)，随机数发生器就失去意义．下面的rand每次运行都是同一组数据．
#elif 0
    srand(1234);
#else
    // time函数 获得当前时间的时间戳．1970.01.01到现在的秒数．
    //　头文件在time.h中，也可以直接声明一下函数即可．
    printf("time now = %ld\n", time(NULL));
    //每次执行程序时，time都会变，种子变量，rand就能得真随机数．
    srand(time(NULL));
#endif
    for (int i = 0; i < 8; i++)
    {
        printf("my rand chk:i=%02d, rand=%10d\n", i, rand());
    }
    return 1;
}
